package com.yuw.threadstopdemo;

import java.util.Scanner;

public class TestDriver {

	public static void main(String[] args) {
		test01();
	}

	private static void test01() {
		// 创建线程的实例对象
		Thread th1 = new MyThread();
		// 启动 多线程 th1
		th1.start();

		// 当前主线程 main方法 等待一段时间之后，让子线程th1执行一段时间之后，设置线程 th1的停止标识变量，结束子线程th1
		// main方法也是一个线程， th1和main方法线程构成并发
		// main方法线程休眠3s
		try {
			Thread.sleep(3000);

		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		// 设置th1子线程的终止变量
		// ((MyThread) th1).setStoped(true);
		// 使用while死循环在main线程中随时监听是否需要终止子线程
		Scanner sc = new Scanner(System.in);
		System.out.println("如果要终止当前线程请输入【y】：");
		while (true) {
			String str = sc.nextLine();
			// 结束子线程
			if (str != null && str.trim().equalsIgnoreCase("y")) {
				((MyThread) th1).setStoped(true);
				// 结束输入监听程序
				break;
			}
		}

	}
}
